package com.zhangshanfeng.file;

import java.io.File;
import java.io.IOException;

/*
### 绝对路径和相对路径【理解】

+ 绝对路径

  是一个完整的路径,从盘符开始

+ 相对路径

  是一个简化的路径,相对当前项目下的路径



  方法分类

| 方法名                         | 说明                                                         |
| ------------------------------ | ------------------------------------------------------------ |
| public boolean createNewFile() |
当具有该名称的文件不存在时，创建一个由该抽象路径名命名的新空文件 |
| public boolean mkdir()         |
创建由此抽象路径名命名的目录                                 |
| public boolean mkdirs()        |
创建由此抽象路径名命名的目录，包括任何必需但不存在的父目录   |
 */
public class FileDemo02 {

    public static void main(String[] args) throws IOException {

        // 是一个完整的路径,从盘符开始
        File file = new File("D:\\woshi");
        // 是一个简化的路径,从当前项目根目录开始
        File file1 = new File("hahaha");
        //当前模块
        File file2 = new File("day11\\hahaha");



        //需求1：我要在E:\\itcast目录下创建一个文件java.txt
        //直接创建，文件路径不存在的话会报错
        /*File file5 = new File("E:\\itcast\\java.txt");
        boolean newFile1 = file5.createNewFile();
        System.out.println(newFile1);*/
        /*File file3 = new File("E:\\itcast");
        if(!file3.exists()){
            boolean mkdirs = file3.mkdirs();
            System.out.println(mkdirs);
        }
        File file4 = new File(file3, "java.txt");
        boolean newFile = file4.createNewFile();
        System.out.println(newFile);*/


        //需求2：我要在E:\\itcast目录下创建一个目录JavaSE
        //两种创建方法 1，mkdir--2.mkdirs
        //fang法1：mkdir
        //父目录不存在会报错mkdir


       /* File file3 = new File("E:\\itcast\\javaSE");
        boolean mkdir = file3.mkdir();
        System.out.println(mkdir);*/

       //方法2.mkdirs----父目录不存在就自行创建
        /*File file3 = new File("E:\\itcast\\javaSE");
        boolean mkdirs = file3.mkdirs();
        System.out.println(mkdirs);*/


        //需求3：我要在E:\\itcast目录下创建一个多级目录JavaWEB\\HTML
        /*File file3 = new File("E:\\itcast\\JavaWEB\\HTML");
        boolean mkdirs = file3.mkdirs();
        System.out.println(mkdirs);*/

        //需求4：我要在E:\\itcast目录下创建一个文件javase.txt---父目录不存在会报异常
        /*File file3 = new File("E:\\itcast\\javase.txt");
        boolean newFile = file3.createNewFile();
        System.out.println(newFile);*/

        //优化，加上判断
        File file3 = new File("E:\\itcast");
        //如果不存在，则创建
        if(!file3.exists()){
            boolean mkdirs = file3.mkdirs();
            System.out.println(mkdirs);
        }
        File file4 = new File(file3, "javase.txt");
        boolean newFile = file4.createNewFile();
        System.out.println(newFile);

        //需求2：删除javase.txt文件

        boolean delete = file4.delete();
        System.out.println(delete);


    }
}
